//package com.yx.b34.task;
//
//import android.content.Context;
//import android.util.Log;
//import android.widget.Toast;
//
//import com.tuya.smart.home.sdk.TuyaHomeSdk;
//import com.tuya.smart.home.sdk.builder.ActivatorBuilder;
//import com.tuya.smart.sdk.api.ITuyaActivator;
//import com.tuya.smart.sdk.api.ITuyaSmartActivatorListener;
//import com.tuya.smart.sdk.bean.DeviceBean;
//import com.tuya.smart.sdk.enums.ActivatorModelEnum;
//import com.yx.b34.constant.Constants;
//import com.yx.b34.event.MessageEvent;
//import com.yx.b34.utils.SharedPrefsUtil;
//import com.yx.b34.utils.ToastUtil;
//
//import org.greenrobot.eventbus.EventBus;import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
//
///**
// * 配网接口工具类
// */
//public class NetworkConfigTask implements ITuyaSmartActivatorListener {
//    private static final String TAG = "NetworkConfigTask";
//    public Context mContext;
//    public static final long CONFIG_TIME_OUT = 100;
//    protected static ITuyaActivator mTuyaActivator = null;
//
//    public NetworkConfigTask(Context context) {
//        mContext = context;
//    }
//
//    /**
//     * 配网方法
//     *
//     * @param context
//     * @param ssid
//     * @param password
//     */
//    public void startNetworkConfig(Context context, String ssid, String password) {
//        //String token = SharedPrefsUtil.getValue(context, Constants.NAME_DEVICE, Constants.KEY_DEVICE_TOKEN, "");
//        Log.d(TAG, "mTuyaActivator Token 1 :" + Constants.TUYA_TOKEN);
//        Log.d(TAG, "mTuyaActivator ssid 2 :" + ssid);
//        Log.d(TAG, "mTuyaActivator password 3 :" + password);
//
//        if (Constants.TUYA_TOKEN.equals("")) {
//            ToastUtil.show(context, "Token 为空", Toast.LENGTH_SHORT);
//            return;
//        }
//        //配网接口
//        mTuyaActivator = TuyaHomeSdk.getActivatorInstance().newActivator(new ActivatorBuilder()
//                .setSsid(ssid)
//                .setContext(context)
//                .setPassword(password)
//                .setActivatorModel(ActivatorModelEnum.TY_AP)
//                .setTimeOut(CONFIG_TIME_OUT)
//                .setToken(Constants.TUYA_TOKEN)
//                .setListener(this));
//
//        mTuyaActivator.start();
//    }
//
//    /**
//     * 停止配网
//     */
//    public void stopNetworkConfig() {
//        if (mTuyaActivator != null) {
//            mTuyaActivator.stop();
//        }
//    }
//
//    public void destroyNetworkConfig() {
//        if (mTuyaActivator != null) {
//            mTuyaActivator.onDestroy();
//        }
//    }
//
//    @Override
//    public void onError(String errorCode, String errorMsg) {
//        Log.d(TAG, errorCode + " : NetworkConfigTask  配网 onError : " + errorMsg);
//        //停止配网
//        stopNetworkConfig();
//
//        MessageEvent event = new MessageEvent();
//        event.setMessageType(MessageEvent.MESSAGE_TYPE_CONFIGNETWORK);
//        event.setCode("Error");
//        event.setMessage(errorMsg);
//        EventBus.getDefault().post(event);
//
//    }
//
//
//    /**
//     * 配网成功后,在这里返回当前设备信息
//     *
//     * @param devResp
//     */
//    @Override
//    public void onActiveSuccess(DeviceBean devResp) {
//        Log.d(TAG, " NetworkConfigTask   onActiveSuccess onSuccess : " + devResp.getDevId());
//        //停止配网
//        stopNetworkConfig();
//
//        if (TuyaConnector.mDevice != null) {
//            TuyaConnector.mDevice.unRegisterDevListener();
//
//            Log.d(TAG, "配网成功时,注销之前的监听");
//        }
//        String devId = devResp.getDevId();
//        Constants.deviceID = devId;
//
//        TuyaConnector.stateCallBack();
//        //获取homeID
//        TuyaConnector.getActivatorHomeId(mContext);
//
//        Log.d(TAG, "-------------------- " + Constants.deviceID);
//
//        //保存device ID
//        SharedPrefsUtil.putValue(mContext, "DEVICE_ID", "device_ID", Constants.deviceID);
//        MessageEvent event = new MessageEvent();
//        event.setMessageType(MessageEvent.MESSAGE_TYPE_CONFIGNETWORK);
//        event.setCode("SUCCESS");
//        event.setMessage(devResp.name);
//        EventBus.getDefault().post(event);
//    }
//
//    @Override
//    public void onStep(String step, Object data) {
//        Log.d(TAG, "NetworkConfigTask   onStep");
//    }
//}
